package roborally;

import roborally.IllegalCoordException;

public class Facade implements IFacade{

	@Override
	public IRobot createRobot(long x, long y, int orientation, double energy) throws IllegalCoordException {
		IRobot robot=new Robot(x,y,orientation,energy);
		return robot;
	}

	@Override
	public long getX(IRobot robot) {
		return robot.getxCoord();
	}

	@Override
	public long getY(IRobot robot) {
		return robot.getyCoord();
	}

	@Override
	public int getOrientation(IRobot robot) {
		return robot.getOrientation();
	}

	@Override
	public void move(IRobot robot) {
		robot.move();
		
	}

	@Override
	public void turnClockwise(IRobot robot) {
		robot.turnClockwise();
		
	}

	@Override
	public double getEnergy(IRobot robot) {
		return robot.getEnergy();
	}

	@Override
	public void recharge(IRobot robot, double energyAmount) {
		robot.recharge(energyAmount);
		
	}

	@Override
	public int isGetEnergyRequiredToReachAndMoveNextTo16Plus() {
		// TODO Auto-generated method stub
		return 0;
	}

	@Override
	public double getEnergyRequiredToReach(IRobot robot, long x, long y) {
		return robot.getMinEnergyToReach(x,y);
	}

	@Override
	public void moveNextTo(IRobot robot, IRobot robot2) {
		robot.moveNextTo(robot2);
		
	}

}
